In most of the chapters dealing with hardware in this book, you've been referred to
compatibility files supplied on many versions of the Linux distribution. For convenience,
this appendix summarizes the main contents of the Hardware How-To file. This version of
the compatibility list is current with the Linux version supplied on the CD-ROM that
accompanies this book.
This appendix deals with only Linux for Intel platforms. For other platforms, check the
following:
| Linux/68k | <http://www-users.informatik.rwth-aachen.de/~hn/linux68k.html> |
| Linux/MIPS | <http://www.waldorf-gmbh.de/linux-mips-faq.html> |
| Linux/PowerPC | <ftp://sunsite.unc.edu/pub/Linux/docs/ports/Linux-PowerPC-FAQ.gz> |
| Linux for Acorn | <http://www.ph.kcl.ac.uk/~amb/linux.html> |
| MacLinux | <http://www.ibg.uu.se/maclinux/> |
ISA, VLB, EISA, and PCI buses are all supported. PS/2 and Microchannel (MCA) are not
supported in the standard kernel. Alpha test PS/2 MCA kernels are available but are not
yet recommended for serious use.
Some laptops have unusual video adapters or power management; it is not uncommon to be
unable to use the power management features.
PCMCIA drivers currently support all common PCMCIA controllers, including Databook
TCIC/2, Intel i82365SL, Cirrus PD67xx, and Vadem VG-468 chipsets. The Motorola 6AHC05GA
controller used in some Hyundai laptops is not supported.
Basically all 386 or better processors will work, including Intel/AMD/Cyrix
386SX/DX/SL/DXL/SLC, 486SX/DX/SL/SX2/DX2/DX4, and Pentium. Linux has built-in FPU
emulation if you don't have a math coprocessor.
Linux does not support SMP yet. Multiprocessor systems will run Linux, but only the
first processor will be used. Some work on this area is being done right now; check the
Linux Project Map for details.
A few very early AMD 486DX processors may hang in some special situations. All current
chips should be OK, and getting a chip swap for old CPUs should not be a problem.
ULSI Math*Co series has a bug in the FSAVE and FRSTOR instructions that causes problems
with all protected mode operating systems. Some older IIT and Cyrix chips may also have
this problem.
There are problems with TLB flushing in UMC U5S chips. Newer kernels have fixed these
problems.
Linux works with all video cards in text mode. VGA cards not listed in the hardware
compatibility list probably will still work with mono VGA and/or standard VGA drivers. If
you're looking into buying a cheap video card to run X, keep in mind that accelerated
cards (ATI Mach, ET4000/W32p, S3) are much faster than unaccelerated or partially
accelerated (Cirrus, WD) cards. S3 801 (ISA), S3 805 (VLB), ET4000/W32p, and ATI Graphics
Wonder (Mach32) are good low-end accelerated cards.
Cards advertised as 32 bpp are actually 24-bit color aligned on 32-bit boundaries. It
does not mean the cards are capable of 32-bit color; 32 bpp is still 24-bit color
(16,777,216 colors). XFree86 does not support 24-bit packed pixels modes, so cards that
can display 24-bit color modes in other operating systems may not able to do this in X.
These cards include Mach32, Cirrus 542x, S3 801/805, ET4000, and others.
The current release of XFree86 supports most recent Diamond cards. Early Diamond cards
are not supported by XFree86, but there are ways of getting them to work. Diamond support
for XFree86 is available at <http://www.diamondmm.com/linux.html>.
Linux works with standard IDE, MFM, and RLL controllers. When using MFM/RLL
controllers, use ext2fs and the bad block checking options when formatting the disk.
Enhanced IDE (EIDE) interfaces with up to two IDE interfaces and up to four hard drives
and/or CD-ROM drives are also supported. ESDI controllers that emulate the ST-506 (that is
MFM/RLL/IDE) interface also work with Linux. The bad block checking comment also applies
to these controllers. Generic 8-bit XT controllers also work with Linux.
Be careful when picking a SCSI controller. Parallel-port SCSI controllers are not
supported. Many cheap ISA SCSI controllers are designed to drive CD-ROMs only. Such
low-end SCSI controllers are no better than IDE. See the SCSI HOWTO file and look at
performance figures before buying a SCSI card. The following SCSI controllers are
supported:
Large IDE (EIDE) drives work fine with newer kernels. The boot partition must lie in
the first 1024 cylinders due to PC BIOS limitations.
Some Conner CFP1060S drives may have problems with Linux and ext2fs. The symptoms are
i-node errors during e2fsck and corrupt filesystems. Conner has released a firmware
upgrade to fix this problem; contact Conner at 1-800-4CONNER (US) or +44-1294-315333
(Europe). Have the microcode version number (found on the drive label, 9WA1.6x) handy when
you call.
Certain Micropolis drives have problems with Adaptec and BusLogic cards; contact the
drive manufacturers for firmware upgrades if you suspect problems.
All SCSI drives should work if the controller is supported, including optical drives,
WORM, CD-R, floptical, and others. Iomega Bernoulli and Zip drives and SyQuest drives all
work fine. Linux supports both 512 and 1024 bytes/sector disks.
The following pointing devices are supported:
Pad devices like Glidepoint also work, as long they're compatible with another mouse
protocol. Newer Logitech mice (except the Mouseman) use the Microsoft protocol and all
three buttons do work. Even though Microsoft's mouses have only two buttons, the protocol
allows three buttons.
The mouse port on the ATI Graphics Ultra and Ultra Pro uses the Logitech bus mouse
protocol.
Linux supports any standard serial/parallel/joystick/IDE combo cards. Linux also
supports 8250, 16450, 16550, and 16550A UARTs. For more information on UARTs, see National
Semiconductor's Application Note AN-493 by Martin S.Michael. Section 5.0 describes in
detail the differences between the NS16550 and NS16550A. Briefly, the NS16550 had bugs in
the FIFO circuits, but the NS16550A (and later) chips fixed those bugs. National produced
very few NS16550s, however, so these chips should be very rare. Many of the 16550 parts in
modern boards are from the many manufacturers of compatible parts, which may not use the
National A suffix. Also, some multiport boards use 16552 or 16554 or various other
multiport or multifunction chips from National or other suppliers (generally in a dense
package soldered to the board, not a 40-pin DIP). Mostly, don't worry about it unless you
encounter a very old 40-pin DIP National NS16550 (no A) chip loose or in an old board; in
this case, treat it as a 16450 (no FIFO) rather than a 16550A.
The following multiport cards are supported by Linux (some require drivers from the
manufacturers):
Linux supports the following sound cards (although not all will have full
functionality):
The ASP chip on Sound Blaster 16 series and AWE32 is not supported. AWE32's on-board
MIDI synthesizer is not supported. These two things will probably never be supported.
Sound Blaster 16's with DSP 4.11 and 4.12 have a hardware bug that causes hung/stuck notes
when playing MIDI and digital audio at the same time. The problem happens with either Wave
Blaster daughterboards or MIDI devices attached to the MIDI port. There is no known fix
for this problem.
Linux supports the following types of CD-ROM drives:
PhotoCD (XA) is also supported. All CD-ROM drives should work similarly for reading
data. Various compatibility problems exist with utilities that play audio CDs. Early
(single-speed) NEC CD-ROM drives may have trouble with currently available SCSI
controllers.
Linux supports the following types of tape drives:
Most tape drives using the floppy controller should work. Various dedicated QIC-80
controllers (Colorado FC-10, Iomega Tape Controller II) are also supported.
Drives that connect to the parallel port (such as the Colorado Trakker) are not
supported. Also, some high-speed tape controllers (Colorado TC-15 / FC-20, Irwin
AX250L/Accutrak 250, IBM Internal Tape Backup Unit, and COREtape Light) are not supported.
All internal modems or external modems connected to the serial port are supported. A
small number of modems come with DOS software that downloads the control program at
runtime. You can normally use these modems by loading the program under DOS and doing a
warm boot. Such modems are probably best avoided because you won't be able to use them
with non-PC hardware in the future. PCMCIA modems should work with the PCMCIA drivers. Fax
modems need appropriate fax software to operate.
Ethernet adapters vary greatly in performance. In general, the newer designs work
better. The only advantage to using some very old cards like the 3C501 is that you can
find them in junk heaps for $5. Be careful with clones; not all clones are good clones,
and bad clones often cause erratic lockups under Linux. Read the Ethernet HOWTO file for
full detailed descriptions of various cards. Linux supports the following Ethernet cards:
The following pocket and portable adapters work with Linux:
Linux works with all ARCnet cards and the IBM Tropic Token Ring cards.
The following cards are known to work with Linux:
All printers and plotters connected to the parallel or serial port should work.
Many Linux programs output PostScript files. Non-PostScript printers can emulate
PostScript Level 2 using Ghostscript. Ghostscript supported printers include the
following:
The following scanners have been known to work well with Linux, although most non-SCSI
models need a driver available from the manufacturer:
These video capture boards will work with Linux-based applications (some require
drivers from the manufacturer):
Practically any UPS on the market will provide protection for the system, but the APC SmartUPS system provides software drivers.